Method, Apparatus and Computer Program for Identifying any Discrepancies in an Email Distribution List

ABSTRACT

Disclosed is a method, apparatus and computer program for identifying any discrepancies in an email distribution list. An email addressed to a list of recipients is received from an originating client. The list is examined to identify one or more possibly amendments to the list of recipients. The originating client is then informed of any identified amendments.

FIELD OF THE INVENTION

The invention relates to the field of emailing and more particularly todistributing email to a group of people.

BACKGROUND OF THE INVENTION

Out-of-date or inappropriate email distribution lists can result inmembers of teams not receiving email intended for them. For example, newjoiners or temporary visitors may be on official lists but not thosekept in other places or manually maintained lists. In order to see theemail, the people who didn't receive it first have to find out that theywere missed off and then request for someone else to provide them with acopy.

FIG. 1 provides an overview of this problem. Server 10 receives emailsfrom various clients (two shown 20, 30). Server 10 hosts mailboxes 40,with each mailbox being owned by a receiving client 50. All mail for aparticular receiving client is stored in the mailbox associated withthat client. Email application 60 on the server adds and retrieves mailfrom appropriate mailboxes at the behest of the clients.

It will be appreciated that some emails from clients 20, 30 may not beaddressed to clients having a mailbox on the server. In this case, emailapplication 80 forwards such emails onto an appropriate email server 90.This process is known in the art and so will not be discussed in anymore detail herein.

Some emails will be addressed to a group of people rather than just asingle recipient. Clients 20, 30 may reference a server-baseddistribution list 95 (or that of another email server—not shown).Alternatively, clients 20, 30 may spell out each person's name or usetheir own locally resolvable distribution list.

As alluded to above, sending emails to groups of people can proveproblematic. Originating client 20 may use an official distributionlist, recently updated to include a number of new joiners to a team.Client 30, on the other hand, may have their own local version of thesame distribution list. Manually maintained lists can easily become outof date and can result in certain people being left out. Therefore,there is a need for a method, apparatus and computer program foridentifying discrepancies in an email distribution list.

SUMMARY OF THE INVENTION

According to a first aspect, there is provided a method for identifyingany discrepancies in an email distribution list, the method comprising:receiving from an originating client an email addressed to a list ofrecipients; and examining the list of recipients to identify one or morepossible amendments to the list of recipients; and informing theoriginating client of any identified amendments.

In one embodiment an addition to the list of recipients is suggested.

In one embodiment, a deletion from the list of recipients is suggested.

The preferred embodiment involves taking corrective action. This mayonly happen when the originating client has confirmed that correctionaction should be taken.

In one embodiment, examining the list of recipients involves comparingthe recipient list with one or more trusted lists in order to identifyone or more possible amendments to the list of recipients.

In another embodiment, the recipient list is compared with a directoryincluding the recipients to identify those recipients missing a commonattribute. One or more possible amendments to the list of recipients arethen identified on the basis of which recipients are missing the commonattribute.

In another embodiment, the recipient list is compared with a directoryincluding the recipients to identify an attribute common to all therecipients. It is then determined if other names in the directory, yetabsent from the recipient list, also share the common attribute. One ormore possible amendments to the list of recipients on the basis of suchabsent names.

In one embodiment, names are grouped according to various criteria.Grouped names are then preferably used in order to identify one or morepossible amendments. By way of example, the recipient list is comparedwith grouped names to identify partial matches which indicate potentialomissions from the recipient list. By way of another example, groupednames are compared with the recipient list to identify partial matcheswhich indicate potential incorrect additions to the recipient list.

In one embodiment, it is determined that the originating client has sentprevious emails which included a keyword common to the received email.Any differences identified between the recipient list for the previousemails and the recipient list for the received email can be used toidentify one or more possibly amendments.

In one embodiment, a trustworthiness is associated with the originatingclient. This is used to decide whether to examine the list ofrecipients.

According to a second aspect, there is provided an apparatus foridentifying any discrepancies in an email distribution list, theapparatus comprising: means for receiving from an originating client anemail addressed to a list of recipients; and means for examining thelist of recipients to identify one or more possible amendments to thelist of recipients; and means for informing the originating client ofany identified amendments.

According to a third aspect, the invention is implemented in computersoftware.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of the present invention are hereinafter describedin conjunction with the appended drawings:

FIG. 1 shows an overview of an email system according to the prior art;

FIG. 2 a illustrates the componentry of the present invention accordingto a preferred embodiment;

FIGS. 2 b and 2 c illustrate the processing of the present inventionaccording to a preferred embodiment; and

FIGS. 3 a and 3 b illustrate the componentry and processing of thepresent invention in accordance with a second embodiment.

It is to be noted, however, that the appended drawings illustrate onlyexample embodiments of the invention, and are therefore not consideredlimiting of its scope, for the invention may admit to other equallyeffective embodiments.

DETAILED DESCRIPTION

Out-of-date or inappropriate email distribution lists can result inmembers of teams not receiving email intended for them. The solutiontaught herein discloses a server which monitors who receives emails andidentifies potential discrepancies.

FIG. 2 a is a component diagram of an email server in accordance with apreferred embodiment of the present invention. FIGS. 2 b and 2 c areflow charts of the processing of the present invention in accordancewith a preferred embodiment. The figures should be read in conjunctionwith one another.

Email server 100 receives a new email via receiver component 110 (block200). As indicated above, the solution disclosed herein is particularlyapplicable to emails addressed to a group of people. Consequently thenames of the people to whom the email is addressed are extracted byextractor component 130 (block 210). It will be appreciated that clientsmay use their own local distribution lists. If this is the case, suchdistribution lists will be resolved at the local client to full emailaddresses before being received at the server. If on the other hand,clients use server based distribution lists, the server will have toresolve any references.

Once the names have been resolved as necessary and extracted, firstdeterminer component 120 determines when the email is addressed to N ormore people (block 220). N is a preconfigured number stored in rulesdatabase 190. If it is the case that the email is addressed to anappropriate number of people, the algorithm of the preferred embodimentis initiated.

The extracted names are compared by list comparer 160 with the known“good” distribution lists 185 (block 230). Good (or trusted)distribution lists preferably comprise official server-baseddistribution lists and newly promoted “good” lists. The process forpromoting lists will be described later with reference to FIG. 2 c.

It is determined by second determiner component 125 whether the size ofthe extracted list of names matches the size of any of the “good” listsby +/−1 to m (block 240). M is preferably a preconfigured number storedin rules data base 190 and in the exemplary embodiment is 2.

If it is determined that the extracted names partially match the knowngood distribution lists by a difference of +/−1 to m, remedial action isinitiated by action component 170 (block 250).

The processing described above will now be illustrated with an example:

X has sent mail to A B C D E (list 1)

Y has sent mail to A B C E F (list 2)

Either every list of names that is received from a client is stored as a“good” list or an algorithm (described later with reference to FIG. 2 c)is applied to determine when a received list of names should be promotedto become a good list. The latter is preferred; however for ease ofexplanation, lists 1 and 2 are now assumed to be in the set of goodlists.

Z sends mail to A B D E (list 3)

List 3 is compared with all lists in the set of good lists.

One of these lists is list 1. Matches between list 3 and list 1 revealsthat addressee C is missing from list 3. Since M is 2 and thus the rangeis +/−1 to 2, the test at step 240 is true—i.e. the test evaluates to−1. Addressee C is recognised as missing and added to an omissions list(not shown).

Another of these lists is list 2. When the test is performed (block 240)for list 2, it is determined that addressees C and F are now missing.Thus the test evaluates to −2 and is therefore also true. C is alreadyon the omissions list so only F is added to omissions list.

When all comparisons are completed, the omissions list is returned to Z.Z can then make a determination as to whether C and F were intentionalomissions or whether the email should be sent to C and/or F.

There are various ways in which the omissions could be presented back toZ. The example above makes no distinction between the lists but simplyinforms Z that C and F are possible omissions. In another embodiment, Zis informed that one list searched includes C and F over and above thepeople to whom they had addressed their email whilst a second listincludes only C. Z can then decide how best to proceed.

By way of another example, Z sends mail to A B C E F G. Lists 1 and 2are still the same. The test (block 240) determines that in comparisonto list 1, F and G are additions (+2) and D is an omission (−1) and incomparison to list 2, G is an addition (+1). Such information isreported back to Z. In other words, it is reported to Z that they havepossibly omitted D and that F and G should possibly not have receivedthe original mail.

In one embodiment, Z may provide feedback to the server which may causethe update of one or more good lists at the server.

As discussed above, the processing of the present invention has theconcept of “good” or trusted lists to determine whether or not to reportaddressee discrepancies to an emailing client. The way in which receivedlists can be promoted to become good lists will be discussed withreference to FIG. 2 c.

The names of the addressees which are extracted at block 210 are used asinput to block 300. Here it is determined by list determiner component145 whether this list of names has been seen before. If the answer isno, then the list is saved for future use (block 310) using list savercomponent 150. A counting component 140 associates 1 with the savedlist, thereby indicating the number of times that this list has beenseen (block 320). The process then loops round.

If on the other hand, at block 300, it is determined that the list ofnames has been seen before, then the test at block 330 is performed.Here it is determined by list determiner component 145 whether the listhas been seen x times before. Once again x is a preconfigured numberstored in rules database 190 and indicates the number of times a listmust be seen before it is to be trusted. By way of example only, x maybe 5. If the list of names has not been seen x times before, then thecount associated with the list is updated by counting component 140 atblock 320 and the process loops round. If on the other hand, the list ofnames has been seen x times before, then that lists is promoted tobecome a “good” list at block 340 (list promoter component 175).

In this way, it is possible to determine which lists of names should betrusted and which still need to earn trust.

Saved lists and those promoted to become “good” lists may havetimestamps associated with them. This makes it possible for lists to beaged and to be automatically deleted when they become “old” (e.g., olderthan 10 days). In another embodiment, it is possible for lists to bemanually deleted/marked as obsolete. Thus storage space is saved.

In one embodiment, email servers share good lists and known distributionlists with one another.

In a second embodiment, the concept of “good” lists is not used. Thecomponentry and processing of this embodiment will be described withreference to FIGS. 3 a and 3 b (which should be read in conjunction withone another).

Email server 400 receives a new email via receiver component 410 atblock 500. The list of addressees is extracted via extractor component430 at block 510. As before, it may be necessary to resolve anyreferenced distribution lists.

Third determiner component 470 then determines whether the email isaddressed to a suitably large number of people N (block 520). N is apreconfigured value stored in rules database 480. In this embodiment, Nis yet again 10.

Assuming that the email is addressed to an appropriate number of people,then the algorithm of this embodiment is initiated.

Comparer component 420 compares the extracted names with a directory 440(block 530). Directory 440 may include information such as employeename; email address and department id. In the example provided, it canbe seen that Joe Bloggs and Fred Rivers both belong to department 830.Joan Chivers, on the other hand, is part of department 731.

The test at block 540 determines via the comparer component 420 whetherthere are any discrepancies. If there are none, then the process loopsround, otherwise actioner component 460 takes appropriate remedialaction (block 550). Such action may be the same as described withreference to the first embodiment.

As described immediately above, block 540 looks for discrepancies. Forexample, an email may be addressed to Joe Bloggs, Fred Rivers and JoanChivers. The comparer component 420 may notice that Joe and Fred bothbelong to the same department (830), whilst Joan is in a differentdepartment (731). Thus actioner component 460 may report back to theoriginator of the email that there is a potential mistake here. Thus itwould be possible to ask the originator whether they still want to sendthe email to somebody who had moved departments. Equally, it would bepossible to determine that an email is being sent to everybody in adepartment except for person A. In this case, the originator could beasked whether A is an intentional omission.

It will be appreciated that only three names and not ten are discussedhere for ease of explanation only.

Whilst the illustration given relates to a department id, it will beappreciated that other variations are possible. For example, thedirectory may include different or additional information enabling otherdiscrepancies to be identified. For example, employees may also begrouped by work project, team etc. Preferably, rules database 480 isaccessed by the comparer component 420 in order to decide whichdiscrepancies to look for.

In another embodiment, people can be grouped by an administratoraccording to various criteria. Grouping component 450 is used to achievethis and provides additional flexibility. In this embodiment, anadministrator is no longer tied to directory based information only. Inone embodiment, an administrator may receive grouping requests fromoriginating clients.

In a variety of embodiments, the email server preferably reportsomissions/additions to an originating client and takes corrective actionbased on feedback from the originating client. For example, the emailserver may modify the addressee list based a client's feedback. In thisway receiving clients should receive emails that are indeed intended forthem. In other words, there is no need for an originating client to takecorrective action (e.g., to resend an item of mail to a previouslyomitted client).

It should be appreciated that whilst the embodiments described makes useof preconfigured values (e.g., x, M and N), these could equally beadministrator configurable.

In various embodiments, the processing of the present invention can beswitched off for certain emailing clients. The “From” field of areceived email is preferably compared against a list of emailers whoeither desire or do not desire the processing of the present invention.

In one embodiment, it is detected that a person (or group of people)regularly sends data with the same keywords (e.g., “Project Y” in thesubject field) to the same list, the server could identify that one weekperson X has been omitted, allowing the sender to confirm the omissionor add person X to the distribution. This involves associating keywordswith trusted lists and analysing not only a new emails recipient listbut also scanning the email (or certain parts thereof for particularkeywords.

In one embodiment, the trustworthiness of email originator is taken intoaccount. For example, a department secretary may be given more credencethan other members of the department. In this embodiment, informationsuch as job title may be looked up in a directory based server in orderto determine how much credence to give the originator of the email. Inone embodiment trust may be earned (e.g., by x number of confirmationsthat a person should be added and/or deleted).

The accompanying figures and this description depicted and describedembodiments of the present invention, and features and componentsthereof. Those skilled in the art will appreciate that any particularprogram nomenclature used in this description was merely forconvenience, and thus the invention should not be limited to use solelyin any specific application identified and/or implied by suchnomenclature. Thus, for example, the routines executed to implement theembodiments of the invention, whether implemented as part of anoperating system or a specific application, component, program, module,object, or sequence of instructions could have been referred to as a“program”, “application”, “server”, or other meaningful nomenclature.Therefore, it is desired that the embodiments described herein beconsidered in all respects as illustrative, not restrictive, and thatreference be made to the appended claims for determining the scope ofthe invention.

1. A method for identifying any discrepancies in an email distributionlist, the method comprising: receiving from an originating client anemail addressed to a list of recipients; and examining the list ofrecipients to identify one or more possible amendments to the list ofrecipients; and informing the originating client of any identifiedamendments.
 2. The method of claim 1, wherein the step of informing theoriginating client of any identified amendments comprises: suggesting anaddition and/or a deletion to the list of recipients.
 3. The method ofclaim 2, wherein the step of examining the list of recipients comprises:comparing the recipient list with one or more trusted lists in order toidentify one or more possible amendments to the list of recipients. 4.The method of claim 3, wherein the step of examining the list ofrecipients comprises: comparing the recipient list with a directoryincluding the recipients to identify those recipients missing a commonattribute; and identifying one or more possible amendments to the listof recipients on the basis of which recipients are missing the commonattribute.
 5. The method of claim 3, wherein the step of examining thelist of recipients comprises: comparing the recipient list with adirectory including the recipients to identify an attribute common toall the recipients; determining if other names in the directory, yetabsent from the recipient list, also share the common attribute; andidentifying one or more possible amendments to the list of recipients onthe basis of such absent names.
 6. The method of claim 5 furthercomprising: grouping names according to various criteria; and usinggrouped names in performance of the examining step.
 7. The method ofclaim 6, wherein the step of grouping names according to variouscriteria comprises: comparing the recipient list with grouped names toidentify partial matches which indicate potential omissions from therecipient list.
 8. The method of claim 7, wherein the step of groupingnames according to various criteria comprises: comparing the recipientlist with grouped names to identify partial matches which indicatepotential incorrect additions to the recipient list.
 9. An apparatus foridentifying any discrepancies in an email distribution list, theapparatus comprising: a receiver that receives an email addressed to alist of recipients from an originating client; and an examiner thatexamines the list of recipients to identify one or more possibleamendments to the list of recipients; and an informer that informs theoriginating client of the identified amendments.
 10. The apparatus ofclaim 9, wherein the informer suggests an addition and/or a deletion tothe list of recipients.
 11. The apparatus of claim 10, wherein theexaminer compares the recipient list with one or more trusted lists inorder to identify one or more possible amendments to the list ofrecipients.
 12. The apparatus of claim 11, wherein the examiner comparesthe recipient list with a directory including the recipients to identifythose recipients missing a common attribute and identifies one or morepossible amendments to the list of recipients on the basis of whichrecipients are missing the common attribute.
 13. The apparatus of claim12, wherein the examiner compares the recipient list with a directoryincluding the recipients to identify an attribute common to all therecipients, determines if other names in the directory, yet absent fromthe recipient list, also share the common attribute, and identifies oneor more possible amendments to the list of recipients on the basis ofsuch absent names.
 14. The apparatus of claim 13 comprising: means forgrouping names according to various criteria, wherein grouped names areused by the examining means.
 15. The apparatus of claim 14, wherein themeans for grouping names compares the recipient list with grouped namesto identify partial matches which indicate potential omissions from therecipient list.
 16. The apparatus of claim 15, wherein the means forgrouping names compares the recipient list with grouped names toidentify partial matches which indicate potential incorrect additions tothe recipient list.
 17. The apparatus of claim 9 comprising: means fordetermining that the originating client has sent previous emails, theemails including a keyword common to the received email; means for usingany differences identified between the recipient list for the previousemails and the recipient list for the received email to identify one ormore possible amendments.
 18. The apparatus of claim 17 comprising:means for associating a trustworthiness with the originating client;means for using the trustworthiness to decide whether to examine thelist of recipients.
 19. A computer program product for enabling acomputer to identify discrepancies in an email distribution listcomprising: computer readable program code means for causing a computerto perform a method comprising the steps of: receiving from anoriginating client an email addressed to a list of recipients; examiningthe list of recipients to identify one or more possible amendments tothe list of recipients, wherein examining the list of recipientscomprises: comparing the recipient list with one or more trusted listsin order to identify one or more possible amendments to the list ofrecipients; and informing the originating client of any identifiedamendments, wherein informing the originating client of any identifiedamendments comprises: suggesting an addition and/or a deletion to thelist of recipients.
 20. The computer program product of claim 19 whereinthe computer readable program code means for causing a computer toperform the method further comprising the steps of: grouping namesaccording to various criteria.